home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1995 August: Tool Chest / Dev.CD Aug 95 TC / Dev.CD Aug 95 TC.toast / Tool Chest / Interfaces / UniversalInterfaces 2.1B1 / AIncludes / ImageCompression.a < prev    next >
Encoding:
Text File  |  1995-04-18  |  40.5 KB  |  1,691 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        ImageCompression.a
  3. ;
  4. ;    Contains:    QuickTime Image Compression Interfaces.
  5. ;
  6. ;    Version:    Technology:    QuickTime 2.0
  7. ;                Package:    Universal Interfaces 2.1ß1 in “MPW Prerelease” on ETO #17
  8. ;
  9. ;    Copyright:    © 1984-1995 by Apple Computer, Inc.
  10. ;                All rights reserved.
  11. ;
  12. ;    Bugs?:        If you find a problem with this file, use the Apple Bug Reporter
  13. ;                stack.  Include the file and version information (from above)
  14. ;                in the problem description and send to:
  15. ;                    Internet:    apple.bugs@applelink.apple.com
  16. ;                    AppleLink:    APPLE.BUGS
  17. ;
  18. ;
  19.  
  20.     IF &TYPE('__IMAGECOMPRESSION__') = 'UNDEFINED' THEN
  21. __IMAGECOMPRESSION__ SET 1
  22.  
  23.  
  24.     IF &TYPE('__TYPES__') = 'UNDEFINED' THEN
  25.     include 'Types.a'
  26.     ENDIF
  27. ;        include 'ConditionalMacros.a'                                ;
  28.  
  29.     IF &TYPE('__QUICKDRAW__') = 'UNDEFINED' THEN
  30.     include 'Quickdraw.a'
  31.     ENDIF
  32. ;        include 'MixedMode.a'                                        ;
  33. ;        include 'QuickdrawText.a'                                    ;
  34.  
  35.     IF &TYPE('__QDOFFSCREEN__') = 'UNDEFINED' THEN
  36.     include 'QDOffscreen.a'
  37.     ENDIF
  38. ;        include 'Errors.a'                                            ;
  39.  
  40.     IF &TYPE('__COMPONENTS__') = 'UNDEFINED' THEN
  41.     include 'Components.a'
  42.     ENDIF
  43.  
  44.     IF &TYPE('__WINDOWS__') = 'UNDEFINED' THEN
  45.     include 'Windows.a'
  46.     ENDIF
  47. ;        include 'Memory.a'                                            ;
  48. ;        include 'Events.a'                                            ;
  49. ;            include 'OSUtils.a'                                    ;
  50. ;        include 'Controls.a'                                        ;
  51. ;            include 'Menus.a'                                        ;
  52.  
  53.     IF &TYPE('__STANDARDFILE__') = 'UNDEFINED' THEN
  54.     include 'StandardFile.a'
  55.     ENDIF
  56. ;        include 'Dialogs.a'                                        ;
  57. ;            include 'TextEdit.a'                                    ;
  58. ;        include 'Files.a'                                            ;
  59. MatrixRecord             RECORD    0
  60. matrix                     ds.l   9        ; offset: $0 (0)
  61. sizeof                     EQU *            ; size:   $24 (36)
  62.                         ENDR
  63.  
  64. ; typedef struct MatrixRecord  MatrixRecord, *MatrixRecordPtr
  65. FixedPoint                 RECORD    0
  66. x                         ds.l   1        ; offset: $0 (0)
  67. y                         ds.l   1        ; offset: $4 (4)
  68. sizeof                     EQU *            ; size:   $8 (8)
  69.                         ENDR
  70.  
  71. ; typedef struct FixedPoint  FixedPoint
  72. FixedRect                 RECORD    0
  73. left                     ds.l   1        ; offset: $0 (0)
  74. top                         ds.l   1        ; offset: $4 (4)
  75. right                     ds.l   1        ; offset: $8 (8)
  76. bottom                     ds.l   1        ; offset: $C (12)
  77. sizeof                     EQU *            ; size:   $10 (16)
  78.                         ENDR
  79.  
  80. ; typedef struct FixedRect     FixedRect
  81. ; These are the bits that are set in the Component flags, and also in the codecInfo struct. 
  82.  
  83. codecInfoDoes1                    EQU        (1 << 0)
  84. codecInfoDoes2                    EQU        (1 << 1)
  85. codecInfoDoes4                    EQU        (1 << 2)
  86. codecInfoDoes8                    EQU        (1 << 3)
  87. codecInfoDoes16                    EQU        (1 << 4)
  88. codecInfoDoes32                    EQU        (1 << 5)
  89. codecInfoDoesDither                EQU        (1 << 6)
  90. codecInfoDoesStretch            EQU        (1 << 7)
  91. codecInfoDoesShrink                EQU        (1 << 8)
  92. codecInfoDoesMask                EQU        (1 << 9)
  93. codecInfoDoesTemporal            EQU        (1 << 10)
  94. codecInfoDoesDouble                EQU        (1 << 11)
  95. codecInfoDoesQuad                EQU        (1 << 12)
  96. codecInfoDoesHalf                EQU        (1 << 13)
  97. codecInfoDoesQuarter            EQU        (1 << 14)
  98. codecInfoDoesRotate                EQU        (1 << 15)
  99. codecInfoDoesHorizFlip            EQU        (1 << 16)
  100. codecInfoDoesVertFlip            EQU        (1 << 17)
  101. codecInfoDoesSkew                EQU        (1 << 18)
  102. codecInfoDoesBlend                EQU        (1 << 19)
  103. codecInfoDoesWarp                EQU        (1 << 20)
  104. codecInfoDoesRecompress            EQU        (1 << 21)
  105. codecInfoDoesSpool                EQU        (1 << 22)
  106. codecInfoDoesRateConstrain        EQU        (1 << 23)
  107.  
  108. codecInfoDepth1                    EQU        (1 << 0)
  109. codecInfoDepth2                    EQU        (1 << 1)
  110. codecInfoDepth4                    EQU        (1 << 2)
  111. codecInfoDepth8                    EQU        (1 << 3)
  112. codecInfoDepth16                EQU        (1 << 4)
  113. codecInfoDepth32                EQU        (1 << 5)
  114. codecInfoDepth24                EQU        (1 << 6)
  115. codecInfoDepth33                EQU        (1 << 7)
  116. codecInfoDepth34                EQU        (1 << 8)
  117. codecInfoDepth36                EQU        (1 << 9)
  118. codecInfoDepth40                EQU        (1 << 10)
  119. codecInfoStoresClut                EQU        (1 << 11)
  120. codecInfoDoesLossless            EQU        (1 << 12)
  121. codecInfoSequenceSensitive        EQU        (1 << 13)
  122.  
  123. codecFlagUseImageBuffer            EQU        (1 << 0)
  124. codecFlagUseScreenBuffer        EQU        (1 << 1)
  125. codecFlagUpdatePrevious            EQU        (1 << 2)
  126. codecFlagNoScreenUpdate            EQU        (1 << 3)
  127. codecFlagWasCompressed            EQU        (1 << 4)
  128. codecFlagDontOffscreen            EQU        (1 << 5)
  129. codecFlagUpdatePreviousComp        EQU        (1 << 6)
  130. codecFlagForceKeyFrame            EQU        (1 << 7)
  131. codecFlagOnlyScreenUpdate        EQU        (1 << 8)
  132. codecFlagLiveGrab                EQU        (1 << 9)
  133. codecFlagDontUseNewImageBuffer    EQU        (1 << 10)
  134. codecFlagInterlaceUpdate        EQU        (1 << 11)
  135. codecFlagCatchUpDiff            EQU        (1 << 12)
  136. codecFlagUsedNewImageBuffer        EQU        (1 << 14)
  137. codecFlagUsedImageBuffer        EQU        (1 << 15)
  138.  
  139. ; The minimum data size for spooling in or out data 
  140. codecMinimumDataSize            EQU        32768
  141.  
  142. compressorComponentType            EQU        'imco'                ; the type for "Components" which compress images 
  143. decompressorComponentType        EQU        'imdc'
  144.  
  145. ; typedef Component         CompressorComponent
  146. ; typedef Component         DecompressorComponent
  147. ; typedef Component         CodecComponent
  148.  
  149. anyCodec                        EQU        0                    ; take first working codec of given type 
  150. bestSpeedCodec                    EQU        -1                    ; take fastest codec of given type 
  151. bestFidelityCodec                EQU        -2                    ; take codec which is most accurate 
  152. bestCompressionCodec            EQU        -3                    ; take codec of given type that is most accurate 
  153.  
  154. ; typedef long                 CodecType
  155. ; typedef unsigned short     CodecFlags
  156. ; typedef unsigned long     CodecQ
  157.  
  158. codecLosslessQuality            EQU        $400
  159. codecMaxQuality                    EQU        $3ff
  160. codecMinQuality                    EQU        $000
  161. codecLowQuality                    EQU        $100
  162. codecNormalQuality                EQU        $200
  163. codecHighQuality                EQU        $300
  164.  
  165. codecCompletionSource            EQU        (1 << 0)            ; asynchronous codec is done with source data 
  166. codecCompletionDest                EQU        (1 << 1)            ; asynchronous codec is done with destination data 
  167.  
  168. codecProgressOpen                EQU        0
  169. codecProgressUpdatePercent        EQU        1
  170. codecProgressClose                EQU        2
  171.  
  172. ; typedef long                 ImageSequence
  173. ICMProgressProcRecord     RECORD    0
  174. progressProc             ds.l   1        ; offset: $0 (0)
  175. progressRefCon             ds.l   1        ; offset: $4 (4)
  176. sizeof                     EQU *            ; size:   $8 (8)
  177.                         ENDR
  178.  
  179. ; typedef struct ICMProgressProcRecord  ICMProgressProcRecord, *ICMProgressProcRecordPtr
  180. ICMCompletionProcRecord RECORD    0
  181. completionProc             ds.l   1        ; offset: $0 (0)
  182. completionRefCon         ds.l   1        ; offset: $4 (4)
  183. sizeof                     EQU *            ; size:   $8 (8)
  184.                         ENDR
  185.  
  186. ; typedef struct ICMCompletionProcRecord  ICMCompletionProcRecord, *ICMCompletionProcRecordPtr
  187. ICMDataProcRecord         RECORD    0
  188. dataProc                 ds.l   1        ; offset: $0 (0)
  189. dataRefCon                 ds.l   1        ; offset: $4 (4)
  190. sizeof                     EQU *            ; size:   $8 (8)
  191.                         ENDR
  192.  
  193. ; typedef struct ICMDataProcRecord  ICMDataProcRecord, *ICMDataProcRecordPtr
  194. ICMFlushProcRecord         RECORD    0
  195. flushProc                 ds.l   1        ; offset: $0 (0)
  196. flushRefCon                 ds.l   1        ; offset: $4 (4)
  197. sizeof                     EQU *            ; size:   $8 (8)
  198.                         ENDR
  199.  
  200. ; typedef struct ICMFlushProcRecord  ICMFlushProcRecord, *ICMFlushProcRecordPtr
  201. ICMAlignmentProcRecord     RECORD    0
  202. alignmentProc             ds.l   1        ; offset: $0 (0)
  203. alignmentRefCon             ds.l   1        ; offset: $4 (4)
  204. sizeof                     EQU *            ; size:   $8 (8)
  205.                         ENDR
  206.  
  207. ; typedef struct ICMAlignmentProcRecord  ICMAlignmentProcRecord, *ICMAlignmentProcRecordPtr
  208. DataRateParams             RECORD    0
  209. dataRate                 ds.l   1        ; offset: $0 (0)
  210. dataOverrun                 ds.l   1        ; offset: $4 (4)
  211. frameDuration             ds.l   1        ; offset: $8 (8)
  212. keyFrameRate             ds.l   1        ; offset: $C (12)
  213. minSpatialQuality         ds.l   1        ; offset: $10 (16)
  214. minTemporalQuality         ds.l   1        ; offset: $14 (20)
  215. sizeof                     EQU *            ; size:   $18 (24)
  216.                         ENDR
  217.  
  218. ; typedef struct DataRateParams  DataRateParams, *DataRateParamsPtr
  219. ImageDescription         RECORD    0
  220. idSize                     ds.l   1        ; offset: $0 (0)        ; total size of ImageDescription including extra data ( CLUTs and other per sequence data 
  221. cType                     ds.l   1        ; offset: $4 (4)        ; what kind of codec compressed this data 
  222. resvd1                     ds.l   1        ; offset: $8 (8)        ; reserved for Apple use 
  223. resvd2                     ds.w   1        ; offset: $C (12)        ; reserved for Apple use 
  224. dataRefIndex             ds.w   1        ; offset: $E (14)        ; set to zero  
  225. version                     ds.w   1        ; offset: $10 (16)        ; which version is this data 
  226. revisionLevel             ds.w   1        ; offset: $12 (18)        ; what version of that codec did this 
  227. vendor                     ds.l   1        ; offset: $14 (20)        ; whose  codec compressed this data 
  228. temporalQuality             ds.l   1        ; offset: $18 (24)        ; what was the temporal quality factor  
  229. spatialQuality             ds.l   1        ; offset: $1C (28)        ; what was the spatial quality factor 
  230. width                     ds.w   1        ; offset: $20 (32)        ; how many pixels wide is this data 
  231. height                     ds.w   1        ; offset: $22 (34)        ; how many pixels high is this data 
  232. hRes                     ds.l   1        ; offset: $24 (36)        ; horizontal resolution 
  233. vRes                     ds.l   1        ; offset: $28 (40)        ; vertical resolution 
  234. dataSize                 ds.l   1        ; offset: $2C (44)        ; if known, the size of data for this image descriptor 
  235. frameCount                 ds.w   1        ; offset: $30 (48)        ; number of frames this description applies to 
  236. name                     ds.l   8        ; offset: $32 (50)        ; name of codec ( in case not installed )  
  237. depth                     ds.w   1        ; offset: $52 (82)        ; what depth is this data (1-32) or ( 33-40 grayscale ) 
  238. clutID                     ds.w   1        ; offset: $54 (84)        ; clut id or if 0 clut follows  or -1 if no clut 
  239. sizeof                     EQU *            ; size:   $56 (86)
  240.                         ENDR
  241.  
  242. ; typedef struct ImageDescription  ImageDescription, *ImageDescriptionPtr, **ImageDescriptionHandle
  243. CodecInfo                 RECORD    0
  244. typeName                 ds.l   8        ; offset: $0 (0)        ; name of the codec type i.e.: 'Apple Image Compression' 
  245. version                     ds.w   1        ; offset: $20 (32)        ; version of the codec data that this codec knows about 
  246. revisionLevel             ds.w   1        ; offset: $22 (34)        ; revision level of this codec i.e: 0x00010001 (1.0.1) 
  247. vendor                     ds.l   1        ; offset: $24 (36)        ; Maker of this codec i.e: 'appl' 
  248. decompressFlags             ds.l   1        ; offset: $28 (40)        ; codecInfo flags for decompression capabilities 
  249. compressFlags             ds.l   1        ; offset: $2C (44)        ; codecInfo flags for compression capabilities 
  250. formatFlags                 ds.l   1        ; offset: $30 (48)        ; codecInfo flags for compression format details 
  251. compressionAccuracy         ds.b   1        ; offset: $34 (52)        ; measure (1-255) of accuracy of this codec for compress (0 if unknown) 
  252. decompressionAccuracy     ds.b   1        ; offset: $35 (53)        ; measure (1-255) of accuracy of this codec for decompress (0 if unknown) 
  253. compressionSpeed         ds.w   1        ; offset: $36 (54)        ; ( millisecs for compressing 320x240 on base mac II) (0 if unknown)  
  254. decompressionSpeed         ds.w   1        ; offset: $38 (56)        ; ( millisecs for decompressing 320x240 on mac II)(0 if unknown)  
  255. compressionLevel         ds.b   1        ; offset: $3A (58)        ; measure (1-255) of compression level of this codec (0 if unknown)  
  256. resvd                     ds.b   1        ; offset: $3B (59)        ; pad 
  257. minimumHeight             ds.w   1        ; offset: $3C (60)        ; minimum height of image (block size) 
  258. minimumWidth             ds.w   1        ; offset: $3E (62)        ; minimum width of image (block size) 
  259. decompressPipelineLatency ds.w   1        ; offset: $40 (64)        ; in milliseconds ( for asynchronous codecs ) 
  260. compressPipelineLatency     ds.w   1        ; offset: $42 (66)        ; in milliseconds ( for asynchronous codecs ) 
  261. privateData                 ds.l   1        ; offset: $44 (68)
  262. sizeof                     EQU *            ; size:   $48 (72)
  263.                         ENDR
  264.  
  265. ; typedef struct CodecInfo     CodecInfo
  266. CodecNameSpec             RECORD    0
  267. codec                     ds.l   1        ; offset: $0 (0)
  268. cType                     ds.l   1        ; offset: $4 (4)
  269. typeName                 ds.l   8        ; offset: $8 (8)
  270. name                     ds.l   1        ; offset: $28 (40)
  271. sizeof                     EQU *            ; size:   $2C (44)
  272.                         ENDR
  273.  
  274. ; typedef struct CodecNameSpec  CodecNameSpec
  275. CodecNameSpecList         RECORD    0
  276. count                     ds.w   1        ; offset: $0 (0)
  277. list                     ds     CodecNameSpec ; offset: $2 (2)
  278. sizeof                     EQU *            ; size:   $2E (46)
  279.                         ENDR
  280.  
  281. ; typedef struct CodecNameSpecList  CodecNameSpecList, *CodecNameSpecListPtr
  282.  
  283. defaultDither                    EQU        0
  284. forceDither                        EQU        1
  285. suppressDither                    EQU        2
  286. useColorMatching                EQU        4
  287.  
  288. ICMFrameTimeRecord         RECORD    0
  289. value                     ds     wide    ; offset: $0 (0)        ; frame time
  290. scale                     ds.l   1        ; offset: $8 (8)        ; timescale of value/duration fields
  291. base                     ds.l   1        ; offset: $C (12)        ; timebase
  292. duration                 ds.l   1        ; offset: $10 (16)        ; duration frame is to be displayed (0 if unknown)
  293. rate                     ds.l   1        ; offset: $14 (20)        ; rate of timebase relative to wall-time
  294. sizeof                     EQU *            ; size:   $18 (24)
  295.                         ENDR
  296.  
  297. ; typedef struct ICMFrameTimeRecord  ICMFrameTimeRecord, *ICMFrameTimePtr
  298. ;
  299. ; pascal OSErr CodecManagerVersion(long *version)
  300. ;
  301.     IF ¬ GENERATINGCFM THEN
  302.         Macro
  303.         _CodecManagerVersion
  304.             moveq    #0,d0
  305.             dc.w     $AAA3
  306.         EndM
  307.     ELSE
  308.         IMPORT_CFM_FUNCTION    CodecManagerVersion
  309.     ENDIF
  310.  
  311. ;
  312. ; pascal OSErr GetCodecNameList(CodecNameSpecListPtr *list, short showAll)
  313. ;
  314.     IF ¬ GENERATINGCFM THEN
  315.         Macro
  316.         _GetCodecNameList
  317.             moveq    #1,d0
  318.             dc.w     $AAA3
  319.         EndM
  320.     ELSE
  321.         IMPORT_CFM_FUNCTION    GetCodecNameList
  322.     ENDIF
  323.  
  324. ;
  325. ; pascal OSErr DisposeCodecNameList(CodecNameSpecListPtr list)
  326. ;
  327.     IF ¬ GENERATINGCFM THEN
  328.         Macro
  329.         _DisposeCodecNameList
  330.             moveq    #15,d0
  331.             dc.w     $AAA3
  332.         EndM
  333.     ELSE
  334.         IMPORT_CFM_FUNCTION    DisposeCodecNameList
  335.     ENDIF
  336.  
  337. ;
  338. ; pascal OSErr GetCodecInfo(CodecInfo *info, CodecType cType, CodecComponent codec)
  339. ;
  340.     IF ¬ GENERATINGCFM THEN
  341.         Macro
  342.         _GetCodecInfo
  343.             moveq    #3,d0
  344.             dc.w     $AAA3
  345.         EndM
  346.     ELSE
  347.         IMPORT_CFM_FUNCTION    GetCodecInfo
  348.     ENDIF
  349.  
  350. ;
  351. ; pascal OSErr GetMaxCompressionSize(PixMapHandle src, const Rect *srcRect, short colorDepth, CodecQ quality, CodecType cType, CompressorComponent codec, long *size)
  352. ;
  353.     IF ¬ GENERATINGCFM THEN
  354.         Macro
  355.         _GetMaxCompressionSize
  356.             moveq    #4,d0
  357.             dc.w     $AAA3
  358.         EndM
  359.     ELSE
  360.         IMPORT_CFM_FUNCTION    GetMaxCompressionSize
  361.     ENDIF
  362.  
  363. ;
  364. ; pascal OSErr GetCompressionTime(PixMapHandle src, const Rect *srcRect, short colorDepth, CodecType cType, CompressorComponent codec, CodecQ *spatialQuality, CodecQ *temporalQuality, unsigned long *compressTime)
  365. ;
  366.     IF ¬ GENERATINGCFM THEN
  367.         Macro
  368.         _GetCompressionTime
  369.             moveq    #5,d0
  370.             dc.w     $AAA3
  371.         EndM
  372.     ELSE
  373.         IMPORT_CFM_FUNCTION    GetCompressionTime
  374.     ENDIF
  375.  
  376. ;
  377. ; pascal OSErr CompressImage(PixMapHandle src, const Rect *srcRect, CodecQ quality, CodecType cType, ImageDescriptionHandle desc, Ptr data)
  378. ;
  379.     IF ¬ GENERATINGCFM THEN
  380.         Macro
  381.         _CompressImage
  382.             moveq    #6,d0
  383.             dc.w     $AAA3
  384.         EndM
  385.     ELSE
  386.         IMPORT_CFM_FUNCTION    CompressImage
  387.     ENDIF
  388.  
  389. ;
  390. ; pascal OSErr FCompressImage(PixMapHandle src, const Rect *srcRect, short colorDepth, CodecQ quality, CodecType cType, CompressorComponent codec, CTabHandle clut, CodecFlags flags, long bufferSize, ICMFlushProcRecordPtr flushProc, ICMProgressProcRecordPtr progressProc, ImageDescriptionHandle desc, Ptr data)
  391. ;
  392.     IF ¬ GENERATINGCFM THEN
  393.         Macro
  394.         _FCompressImage
  395.             moveq    #7,d0
  396.             dc.w     $AAA3
  397.         EndM
  398.     ELSE
  399.         IMPORT_CFM_FUNCTION    FCompressImage
  400.     ENDIF
  401.  
  402. ;
  403. ; pascal OSErr DecompressImage(Ptr data, ImageDescriptionHandle desc, PixMapHandle dst, const Rect *srcRect, const Rect *dstRect, short mode, RgnHandle mask)
  404. ;
  405.     IF ¬ GENERATINGCFM THEN
  406.         Macro
  407.         _DecompressImage
  408.             moveq    #8,d0
  409.             dc.w     $AAA3
  410.         EndM
  411.     ELSE
  412.         IMPORT_CFM_FUNCTION    DecompressImage
  413.     ENDIF
  414.  
  415. ;
  416. ; pascal OSErr FDecompressImage(Ptr data, ImageDescriptionHandle desc, PixMapHandle dst, const Rect *srcRect, MatrixRecordPtr matrix, short mode, RgnHandle mask, PixMapHandle matte, const Rect *matteRect, CodecQ accuracy, DecompressorComponent codec, long bufferSize, ICMDataProcRecordPtr dataProc, ICMProgressProcRecordPtr progressProc)
  417. ;
  418.     IF ¬ GENERATINGCFM THEN
  419.         Macro
  420.         _FDecompressImage
  421.             moveq    #9,d0
  422.             dc.w     $AAA3
  423.         EndM
  424.     ELSE
  425.         IMPORT_CFM_FUNCTION    FDecompressImage
  426.     ENDIF
  427.  
  428. ;
  429. ; pascal OSErr CompressSequenceBegin(ImageSequence *seqID, PixMapHandle src, PixMapHandle prev, const Rect *srcRect, const Rect *prevRect, short colorDepth, CodecType cType, CompressorComponent codec, CodecQ spatialQuality, CodecQ temporalQuality, long keyFrameRate, CTabHandle clut, CodecFlags flags, ImageDescriptionHandle desc)
  430. ;
  431.     IF ¬ GENERATINGCFM THEN
  432.         Macro
  433.         _CompressSequenceBegin
  434.             moveq    #10,d0
  435.             dc.w     $AAA3
  436.         EndM
  437.     ELSE
  438.         IMPORT_CFM_FUNCTION    CompressSequenceBegin
  439.     ENDIF
  440.  
  441. ;
  442. ; pascal OSErr CompressSequenceFrame(ImageSequence seqID, PixMapHandle src, const Rect *srcRect, CodecFlags flags, Ptr data, long *dataSize, UInt8 *similarity, ICMCompletionProcRecordPtr asyncCompletionProc)
  443. ;
  444.     IF ¬ GENERATINGCFM THEN
  445.         Macro
  446.         _CompressSequenceFrame
  447.             moveq    #11,d0
  448.             dc.w     $AAA3
  449.         EndM
  450.     ELSE
  451.         IMPORT_CFM_FUNCTION    CompressSequenceFrame
  452.     ENDIF
  453.  
  454. ;
  455. ; pascal OSErr DecompressSequenceBegin(ImageSequence *seqID, ImageDescriptionHandle desc, CGrafPtr port, GDHandle gdh, const Rect *srcRect, MatrixRecordPtr matrix, short mode, RgnHandle mask, CodecFlags flags, CodecQ accuracy, DecompressorComponent codec)
  456. ;
  457.     IF ¬ GENERATINGCFM THEN
  458.         Macro
  459.         _DecompressSequenceBegin
  460.             moveq    #13,d0
  461.             dc.w     $AAA3
  462.         EndM
  463.     ELSE
  464.         IMPORT_CFM_FUNCTION    DecompressSequenceBegin
  465.     ENDIF
  466.  
  467. ;
  468. ; pascal OSErr DecompressSequenceBeginS(ImageSequence *seqID, ImageDescriptionHandle desc, Ptr data, long dataSize, CGrafPtr port, GDHandle gdh, const Rect *srcRect, MatrixRecordPtr matrix, short mode, RgnHandle mask, CodecFlags flags, CodecQ accuracy, DecompressorComponent codec)
  469. ;
  470.     IF ¬ GENERATINGCFM THEN
  471.         Macro
  472.         _DecompressSequenceBeginS
  473.             dc.w     $203C
  474.             dc.w     $0030
  475.             dc.w     $005D
  476.             dc.w     $AAA3
  477.         EndM
  478.     ELSE
  479.         IMPORT_CFM_FUNCTION    DecompressSequenceBeginS
  480.     ENDIF
  481.  
  482. ;
  483. ; pascal OSErr DecompressSequenceFrame(ImageSequence seqID, Ptr data, CodecFlags inFlags, CodecFlags *outFlags, ICMCompletionProcRecordPtr asyncCompletionProc)
  484. ;
  485.     IF ¬ GENERATINGCFM THEN
  486.         Macro
  487.         _DecompressSequenceFrame
  488.             moveq    #14,d0
  489.             dc.w     $AAA3
  490.         EndM
  491.     ELSE
  492.         IMPORT_CFM_FUNCTION    DecompressSequenceFrame
  493.     ENDIF
  494.  
  495. ;
  496. ; pascal OSErr DecompressSequenceFrameS(ImageSequence seqID, Ptr data, long dataSize, CodecFlags inFlags, CodecFlags *outFlags, ICMCompletionProcRecordPtr asyncCompletionProc)
  497. ;
  498.     IF ¬ GENERATINGCFM THEN
  499.         Macro
  500.         _DecompressSequenceFrameS
  501.             dc.w     $203C
  502.             dc.w     $0016
  503.             dc.w     $0047
  504.             dc.w     $AAA3
  505.         EndM
  506.     ELSE
  507.         IMPORT_CFM_FUNCTION    DecompressSequenceFrameS
  508.     ENDIF
  509.  
  510. ;
  511. ; pascal OSErr DecompressSequenceFrameWhen(ImageSequence seqID, Ptr data, long dataSize, CodecFlags inFlags, CodecFlags *outFlags, ICMCompletionProcRecordPtr asyncCompletionProc, const ICMFrameTimeRecord *frameTime)
  512. ;
  513.     IF ¬ GENERATINGCFM THEN
  514.         Macro
  515.         _DecompressSequenceFrameWhen
  516.             dc.w     $203C
  517.             dc.w     $001A
  518.             dc.w     $005E
  519.             dc.w     $AAA3
  520.         EndM
  521.     ELSE
  522.         IMPORT_CFM_FUNCTION    DecompressSequenceFrameWhen
  523.     ENDIF
  524.  
  525. ;
  526. ; pascal OSErr CDSequenceFlush(ImageSequence seqID)
  527. ;
  528.     IF ¬ GENERATINGCFM THEN
  529.         Macro
  530.         _CDSequenceFlush
  531.             dc.w     $203C
  532.             dc.w     $0004
  533.             dc.w     $005F
  534.             dc.w     $AAA3
  535.         EndM
  536.     ELSE
  537.         IMPORT_CFM_FUNCTION    CDSequenceFlush
  538.     ENDIF
  539.  
  540. ;
  541. ; pascal OSErr SetDSequenceMatrix(ImageSequence seqID, MatrixRecordPtr matrix)
  542. ;
  543.     IF ¬ GENERATINGCFM THEN
  544.         Macro
  545.         _SetDSequenceMatrix
  546.             moveq    #16,d0
  547.             dc.w     $AAA3
  548.         EndM
  549.     ELSE
  550.         IMPORT_CFM_FUNCTION    SetDSequenceMatrix
  551.     ENDIF
  552.  
  553. ;
  554. ; pascal OSErr SetDSequenceMatte(ImageSequence seqID, PixMapHandle matte, const Rect *matteRect)
  555. ;
  556.     IF ¬ GENERATINGCFM THEN
  557.         Macro
  558.         _SetDSequenceMatte
  559.             moveq    #17,d0
  560.             dc.w     $AAA3
  561.         EndM
  562.     ELSE
  563.         IMPORT_CFM_FUNCTION    SetDSequenceMatte
  564.     ENDIF
  565.  
  566. ;
  567. ; pascal OSErr SetDSequenceMask(ImageSequence seqID, RgnHandle mask)
  568. ;
  569.     IF ¬ GENERATINGCFM THEN
  570.         Macro
  571.         _SetDSequenceMask
  572.             moveq    #18,d0
  573.             dc.w     $AAA3
  574.         EndM
  575.     ELSE
  576.         IMPORT_CFM_FUNCTION    SetDSequenceMask
  577.     ENDIF
  578.  
  579. ;
  580. ; pascal OSErr SetDSequenceTransferMode(ImageSequence seqID, short mode, const RGBColor *opColor)
  581. ;
  582.     IF ¬ GENERATINGCFM THEN
  583.         Macro
  584.         _SetDSequenceTransferMode
  585.             moveq    #19,d0
  586.             dc.w     $AAA3
  587.         EndM
  588.     ELSE
  589.         IMPORT_CFM_FUNCTION    SetDSequenceTransferMode
  590.     ENDIF
  591.  
  592. ;
  593. ; pascal OSErr SetDSequenceDataProc(ImageSequence seqID, ICMDataProcRecordPtr dataProc, long bufferSize)
  594. ;
  595.     IF ¬ GENERATINGCFM THEN
  596.         Macro
  597.         _SetDSequenceDataProc
  598.             moveq    #20,d0
  599.             dc.w     $AAA3
  600.         EndM
  601.     ELSE
  602.         IMPORT_CFM_FUNCTION    SetDSequenceDataProc
  603.     ENDIF
  604.  
  605. ;
  606. ; pascal OSErr SetDSequenceAccuracy(ImageSequence seqID, CodecQ accuracy)
  607. ;
  608.     IF ¬ GENERATINGCFM THEN
  609.         Macro
  610.         _SetDSequenceAccuracy
  611.             moveq    #52,d0
  612.             dc.w     $AAA3
  613.         EndM
  614.     ELSE
  615.         IMPORT_CFM_FUNCTION    SetDSequenceAccuracy
  616.     ENDIF
  617.  
  618. ;
  619. ; pascal OSErr SetDSequenceSrcRect(ImageSequence seqID, const Rect *srcRect)
  620. ;
  621.     IF ¬ GENERATINGCFM THEN
  622.         Macro
  623.         _SetDSequenceSrcRect
  624.             moveq    #53,d0
  625.             dc.w     $AAA3
  626.         EndM
  627.     ELSE
  628.         IMPORT_CFM_FUNCTION    SetDSequenceSrcRect
  629.     ENDIF
  630.  
  631. ;
  632. ; pascal OSErr GetDSequenceImageBuffer(ImageSequence seqID, GWorldPtr *gworld)
  633. ;
  634.     IF ¬ GENERATINGCFM THEN
  635.         Macro
  636.         _GetDSequenceImageBuffer
  637.             moveq    #21,d0
  638.             dc.w     $AAA3
  639.         EndM
  640.     ELSE
  641.         IMPORT_CFM_FUNCTION    GetDSequenceImageBuffer
  642.     ENDIF
  643.  
  644. ;
  645. ; pascal OSErr GetDSequenceScreenBuffer(ImageSequence seqID, GWorldPtr *gworld)
  646. ;
  647.     IF ¬ GENERATINGCFM THEN
  648.         Macro
  649.         _GetDSequenceScreenBuffer
  650.             moveq    #22,d0
  651.             dc.w     $AAA3
  652.         EndM
  653.     ELSE
  654.         IMPORT_CFM_FUNCTION    GetDSequenceScreenBuffer
  655.     ENDIF
  656.  
  657. ;
  658. ; pascal OSErr SetCSequenceQuality(ImageSequence seqID, CodecQ spatialQuality, CodecQ temporalQuality)
  659. ;
  660.     IF ¬ GENERATINGCFM THEN
  661.         Macro
  662.         _SetCSequenceQuality
  663.             moveq    #23,d0
  664.             dc.w     $AAA3
  665.         EndM
  666.     ELSE
  667.         IMPORT_CFM_FUNCTION    SetCSequenceQuality
  668.     ENDIF
  669.  
  670. ;
  671. ; pascal OSErr SetCSequencePrev(ImageSequence seqID, PixMapHandle prev, const Rect *prevRect)
  672. ;
  673.     IF ¬ GENERATINGCFM THEN
  674.         Macro
  675.         _SetCSequencePrev
  676.             moveq    #24,d0
  677.             dc.w     $AAA3
  678.         EndM
  679.     ELSE
  680.         IMPORT_CFM_FUNCTION    SetCSequencePrev
  681.     ENDIF
  682.  
  683. ;
  684. ; pascal OSErr SetCSequenceFlushProc(ImageSequence seqID, ICMFlushProcRecordPtr flushProc, long bufferSize)
  685. ;
  686.     IF ¬ GENERATINGCFM THEN
  687.         Macro
  688.         _SetCSequenceFlushProc
  689.             moveq    #51,d0
  690.             dc.w     $AAA3
  691.         EndM
  692.     ELSE
  693.         IMPORT_CFM_FUNCTION    SetCSequenceFlushProc
  694.     ENDIF
  695.  
  696. ;
  697. ; pascal OSErr SetCSequenceKeyFrameRate(ImageSequence seqID, long keyframerate)
  698. ;
  699.     IF ¬ GENERATINGCFM THEN
  700.         Macro
  701.         _SetCSequenceKeyFrameRate
  702.             moveq    #54,d0
  703.             dc.w     $AAA3
  704.         EndM
  705.     ELSE
  706.         IMPORT_CFM_FUNCTION    SetCSequenceKeyFrameRate
  707.     ENDIF
  708.  
  709. ;
  710. ; pascal OSErr GetCSequenceKeyFrameRate(ImageSequence seqID, long *keyframerate)
  711. ;
  712.     IF ¬ GENERATINGCFM THEN
  713.         Macro
  714.         _GetCSequenceKeyFrameRate
  715.             dc.w     $203C
  716.             dc.w     $0008
  717.             dc.w     $004B
  718.             dc.w     $AAA3
  719.         EndM
  720.     ELSE
  721.         IMPORT_CFM_FUNCTION    GetCSequenceKeyFrameRate
  722.     ENDIF
  723.  
  724. ;
  725. ; pascal OSErr GetCSequencePrevBuffer(ImageSequence seqID, GWorldPtr *gworld)
  726. ;
  727.     IF ¬ GENERATINGCFM THEN
  728.         Macro
  729.         _GetCSequencePrevBuffer
  730.             moveq    #25,d0
  731.             dc.w     $AAA3
  732.         EndM
  733.     ELSE
  734.         IMPORT_CFM_FUNCTION    GetCSequencePrevBuffer
  735.     ENDIF
  736.  
  737. ;
  738. ; pascal OSErr CDSequenceBusy(ImageSequence seqID)
  739. ;
  740.     IF ¬ GENERATINGCFM THEN
  741.         Macro
  742.         _CDSequenceBusy
  743.             moveq    #26,d0
  744.             dc.w     $AAA3
  745.         EndM
  746.     ELSE
  747.         IMPORT_CFM_FUNCTION    CDSequenceBusy
  748.     ENDIF
  749.  
  750. ;
  751. ; pascal OSErr CDSequenceEnd(ImageSequence seqID)
  752. ;
  753.     IF ¬ GENERATINGCFM THEN
  754.         Macro
  755.         _CDSequenceEnd
  756.             moveq    #27,d0
  757.             dc.w     $AAA3
  758.         EndM
  759.     ELSE
  760.         IMPORT_CFM_FUNCTION    CDSequenceEnd
  761.     ENDIF
  762.  
  763. ;
  764. ; pascal OSErr GetCompressedImageSize(ImageDescriptionHandle desc, Ptr data, long bufferSize, ICMDataProcRecordPtr dataProc, long *dataSize)
  765. ;
  766.     IF ¬ GENERATINGCFM THEN
  767.         Macro
  768.         _GetCompressedImageSize
  769.             moveq    #28,d0
  770.             dc.w     $AAA3
  771.         EndM
  772.     ELSE
  773.         IMPORT_CFM_FUNCTION    GetCompressedImageSize
  774.     ENDIF
  775.  
  776. ;
  777. ; pascal OSErr GetSimilarity(PixMapHandle src, const Rect *srcRect, ImageDescriptionHandle desc, Ptr data, Fixed *similarity)
  778. ;
  779.     IF ¬ GENERATINGCFM THEN
  780.         Macro
  781.         _GetSimilarity
  782.             moveq    #29,d0
  783.             dc.w     $AAA3
  784.         EndM
  785.     ELSE
  786.         IMPORT_CFM_FUNCTION    GetSimilarity
  787.     ENDIF
  788.  
  789. ;
  790. ; pascal OSErr GetImageDescriptionCTable(ImageDescriptionHandle desc, CTabHandle *ctable)
  791. ;
  792.     IF ¬ GENERATINGCFM THEN
  793.         Macro
  794.         _GetImageDescriptionCTable
  795.             moveq    #30,d0
  796.             dc.w     $AAA3
  797.         EndM
  798.     ELSE
  799.         IMPORT_CFM_FUNCTION    GetImageDescriptionCTable
  800.     ENDIF
  801.  
  802. ;
  803. ; pascal OSErr SetImageDescriptionCTable(ImageDescriptionHandle desc, CTabHandle ctable)
  804. ;
  805.     IF ¬ GENERATINGCFM THEN
  806.         Macro
  807.         _SetImageDescriptionCTable
  808.             moveq    #31,d0
  809.             dc.w     $AAA3
  810.         EndM
  811.     ELSE
  812.         IMPORT_CFM_FUNCTION    SetImageDescriptionCTable
  813.     ENDIF
  814.  
  815. ;
  816. ; pascal OSErr GetImageDescriptionExtension(ImageDescriptionHandle desc, Handle *extension, long idType, long index)
  817. ;
  818.     IF ¬ GENERATINGCFM THEN
  819.         Macro
  820.         _GetImageDescriptionExtension
  821.             moveq    #32,d0
  822.             dc.w     $AAA3
  823.         EndM
  824.     ELSE
  825.         IMPORT_CFM_FUNCTION    GetImageDescriptionExtension
  826.     ENDIF
  827.  
  828. ;
  829. ; pascal OSErr SetImageDescriptionExtension(ImageDescriptionHandle desc, Handle extension, long idType)
  830. ;
  831.     IF ¬ GENERATINGCFM THEN
  832.         Macro
  833.         _SetImageDescriptionExtension
  834.             moveq    #33,d0
  835.             dc.w     $AAA3
  836.         EndM
  837.     ELSE
  838.         IMPORT_CFM_FUNCTION    SetImageDescriptionExtension
  839.     ENDIF
  840.  
  841. ;
  842. ; pascal OSErr RemoveImageDescriptionExtension(ImageDescription **desc, long idType, long index)
  843. ;
  844.     IF ¬ GENERATINGCFM THEN
  845.         Macro
  846.         _RemoveImageDescriptionExtension
  847.             dc.w     $203C
  848.             dc.w     $000C
  849.             dc.w     $003A
  850.             dc.w     $AAA3
  851.         EndM
  852.     ELSE
  853.         IMPORT_CFM_FUNCTION    RemoveImageDescriptionExtension
  854.     ENDIF
  855.  
  856. ;
  857. ; pascal OSErr CountImageDescriptionExtensionType(ImageDescription **desc, long idType, long *count)
  858. ;
  859.     IF ¬ GENERATINGCFM THEN
  860.         Macro
  861.         _CountImageDescriptionExtensionType
  862.             dc.w     $203C
  863.             dc.w     $000C
  864.             dc.w     $003B
  865.             dc.w     $AAA3
  866.         EndM
  867.     ELSE
  868.         IMPORT_CFM_FUNCTION    CountImageDescriptionExtensionType
  869.     ENDIF
  870.  
  871. ;
  872. ; pascal OSErr GetNextImageDescriptionExtensionType(ImageDescription **desc, long *idType)
  873. ;
  874.     IF ¬ GENERATINGCFM THEN
  875.         Macro
  876.         _GetNextImageDescriptionExtensionType
  877.             dc.w     $203C
  878.             dc.w     $0008
  879.             dc.w     $003C
  880.             dc.w     $AAA3
  881.         EndM
  882.     ELSE
  883.         IMPORT_CFM_FUNCTION    GetNextImageDescriptionExtensionType
  884.     ENDIF
  885.  
  886. ;
  887. ; pascal OSErr FindCodec(CodecType cType, CodecComponent specCodec, CompressorComponent *compressor, DecompressorComponent *decompressor)
  888. ;
  889.     IF ¬ GENERATINGCFM THEN
  890.         Macro
  891.         _FindCodec
  892.             moveq    #35,d0
  893.             dc.w     $AAA3
  894.         EndM
  895.     ELSE
  896.         IMPORT_CFM_FUNCTION    FindCodec
  897.     ENDIF
  898.  
  899. ;
  900. ; pascal OSErr CompressPicture(PicHandle srcPicture, PicHandle dstPicture, CodecQ quality, CodecType cType)
  901. ;
  902.     IF ¬ GENERATINGCFM THEN
  903.         Macro
  904.         _CompressPicture
  905.             moveq    #36,d0
  906.             dc.w     $AAA3
  907.         EndM
  908.     ELSE
  909.         IMPORT_CFM_FUNCTION    CompressPicture
  910.     ENDIF
  911.  
  912. ;
  913. ; pascal OSErr FCompressPicture(PicHandle srcPicture, PicHandle dstPicture, short colorDepth, CTabHandle clut, CodecQ quality, short doDither, short compressAgain, ICMProgressProcRecordPtr progressProc, CodecType cType, CompressorComponent codec)
  914. ;
  915.     IF ¬ GENERATINGCFM THEN
  916.         Macro
  917.         _FCompressPicture
  918.             moveq    #37,d0
  919.             dc.w     $AAA3
  920.         EndM
  921.     ELSE
  922.         IMPORT_CFM_FUNCTION    FCompressPicture
  923.     ENDIF
  924.  
  925. ;
  926. ; pascal OSErr CompressPictureFile(short srcRefNum, short dstRefNum, CodecQ quality, CodecType cType)
  927. ;
  928.     IF ¬ GENERATINGCFM THEN
  929.         Macro
  930.         _CompressPictureFile
  931.             moveq    #38,d0
  932.             dc.w     $AAA3
  933.         EndM
  934.     ELSE
  935.         IMPORT_CFM_FUNCTION    CompressPictureFile
  936.     ENDIF
  937.  
  938. ;
  939. ; pascal OSErr FCompressPictureFile(short srcRefNum, short dstRefNum, short colorDepth, CTabHandle clut, CodecQ quality, short doDither, short compressAgain, ICMProgressProcRecordPtr progressProc, CodecType cType, CompressorComponent codec)
  940. ;
  941.     IF ¬ GENERATINGCFM THEN
  942.         Macro
  943.         _FCompressPictureFile
  944.             moveq    #39,d0
  945.             dc.w     $AAA3
  946.         EndM
  947.     ELSE
  948.         IMPORT_CFM_FUNCTION    FCompressPictureFile
  949.     ENDIF
  950.  
  951. ;
  952. ; pascal OSErr GetPictureFileHeader(short refNum, Rect *frame, OpenCPicParams *header)
  953. ;
  954.     IF ¬ GENERATINGCFM THEN
  955.         Macro
  956.         _GetPictureFileHeader
  957.             moveq    #40,d0
  958.             dc.w     $AAA3
  959.         EndM
  960.     ELSE
  961.         IMPORT_CFM_FUNCTION    GetPictureFileHeader
  962.     ENDIF
  963.  
  964. ;
  965. ; pascal OSErr DrawPictureFile(short refNum, const Rect *frame, ICMProgressProcRecordPtr progressProc)
  966. ;
  967.     IF ¬ GENERATINGCFM THEN
  968.         Macro
  969.         _DrawPictureFile
  970.             moveq    #41,d0
  971.             dc.w     $AAA3
  972.         EndM
  973.     ELSE
  974.         IMPORT_CFM_FUNCTION    DrawPictureFile
  975.     ENDIF
  976.  
  977. ;
  978. ; pascal OSErr DrawTrimmedPicture(PicHandle srcPicture, const Rect *frame, RgnHandle trimMask, short doDither, ICMProgressProcRecordPtr progressProc)
  979. ;
  980.     IF ¬ GENERATINGCFM THEN
  981.         Macro
  982.         _DrawTrimmedPicture
  983.             moveq    #46,d0
  984.             dc.w     $AAA3
  985.         EndM
  986.     ELSE
  987.         IMPORT_CFM_FUNCTION    DrawTrimmedPicture
  988.     ENDIF
  989.  
  990. ;
  991. ; pascal OSErr DrawTrimmedPictureFile(short srcRefnum, const Rect *frame, RgnHandle trimMask, short doDither, ICMProgressProcRecordPtr progressProc)
  992. ;
  993.     IF ¬ GENERATINGCFM THEN
  994.         Macro
  995.         _DrawTrimmedPictureFile
  996.             moveq    #47,d0
  997.             dc.w     $AAA3
  998.         EndM
  999.     ELSE
  1000.         IMPORT_CFM_FUNCTION    DrawTrimmedPictureFile
  1001.     ENDIF
  1002.  
  1003. ;
  1004. ; pascal OSErr MakeThumbnailFromPicture(PicHandle picture, short colorDepth, PicHandle thumbnail, ICMProgressProcRecordPtr progressProc)
  1005. ;
  1006.     IF ¬ GENERATINGCFM THEN
  1007.         Macro
  1008.         _MakeThumbnailFromPicture
  1009.             moveq    #42,d0
  1010.             dc.w     $AAA3
  1011.         EndM
  1012.     ELSE
  1013.         IMPORT_CFM_FUNCTION    MakeThumbnailFromPicture
  1014.     ENDIF
  1015.  
  1016. ;
  1017. ; pascal OSErr MakeThumbnailFromPictureFile(short refNum, short colorDepth, PicHandle thumbnail, ICMProgressProcRecordPtr progressProc)
  1018. ;
  1019.     IF ¬ GENERATINGCFM THEN
  1020.         Macro
  1021.         _MakeThumbnailFromPictureFile
  1022.             moveq    #43,d0
  1023.             dc.w     $AAA3
  1024.         EndM
  1025.     ELSE
  1026.         IMPORT_CFM_FUNCTION    MakeThumbnailFromPictureFile
  1027.     ENDIF
  1028.  
  1029. ;
  1030. ; pascal OSErr MakeThumbnailFromPixMap(PixMapHandle src, const Rect *srcRect, short colorDepth, PicHandle thumbnail, ICMProgressProcRecordPtr progressProc)
  1031. ;
  1032.     IF ¬ GENERATINGCFM THEN
  1033.         Macro
  1034.         _MakeThumbnailFromPixMap
  1035.             moveq    #44,d0
  1036.             dc.w     $AAA3
  1037.         EndM
  1038.     ELSE
  1039.         IMPORT_CFM_FUNCTION    MakeThumbnailFromPixMap
  1040.     ENDIF
  1041.  
  1042. ;
  1043. ; pascal OSErr TrimImage(ImageDescriptionHandle desc, Ptr inData, long inBufferSize, ICMDataProcRecordPtr dataProc, Ptr outData, long outBufferSize, ICMFlushProcRecordPtr flushProc, Rect *trimRect, ICMProgressProcRecordPtr progressProc)
  1044. ;
  1045.     IF ¬ GENERATINGCFM THEN
  1046.         Macro
  1047.         _TrimImage
  1048.             moveq    #45,d0
  1049.             dc.w     $AAA3
  1050.         EndM
  1051.     ELSE
  1052.         IMPORT_CFM_FUNCTION    TrimImage
  1053.     ENDIF
  1054.  
  1055. ;
  1056. ; pascal OSErr ConvertImage(ImageDescriptionHandle srcDD, Ptr srcData, short colorDepth, CTabHandle clut, CodecQ accuracy, CodecQ quality, CodecType cType, CodecComponent codec, ImageDescriptionHandle dstDD, Ptr dstData)
  1057. ;
  1058.     IF ¬ GENERATINGCFM THEN
  1059.         Macro
  1060.         _ConvertImage
  1061.             moveq    #48,d0
  1062.             dc.w     $AAA3
  1063.         EndM
  1064.     ELSE
  1065.         IMPORT_CFM_FUNCTION    ConvertImage
  1066.     ENDIF
  1067.  
  1068. ;
  1069. ; pascal OSErr GetCompressedPixMapInfo(PixMapPtr pix, ImageDescriptionHandle *desc, Ptr *data, long *bufferSize, ICMDataProcRecord *dataProc, ICMProgressProcRecord *progressProc)
  1070. ;
  1071.     IF ¬ GENERATINGCFM THEN
  1072.         Macro
  1073.         _GetCompressedPixMapInfo
  1074.             moveq    #55,d0
  1075.             dc.w     $AAA3
  1076.         EndM
  1077.     ELSE
  1078.         IMPORT_CFM_FUNCTION    GetCompressedPixMapInfo
  1079.     ENDIF
  1080.  
  1081. ;
  1082. ; pascal OSErr SetCompressedPixMapInfo(PixMapPtr pix, ImageDescriptionHandle desc, Ptr data, long bufferSize, ICMDataProcRecordPtr dataProc, ICMProgressProcRecordPtr progressProc)
  1083. ;
  1084.     IF ¬ GENERATINGCFM THEN
  1085.         Macro
  1086.         _SetCompressedPixMapInfo
  1087.             moveq    #56,d0
  1088.             dc.w     $AAA3
  1089.         EndM
  1090.     ELSE
  1091.         IMPORT_CFM_FUNCTION    SetCompressedPixMapInfo
  1092.     ENDIF
  1093.  
  1094. ;
  1095. ; pascal void StdPix(PixMapPtr src, const Rect *srcRect, MatrixRecordPtr matrix, short mode, RgnHandle mask, PixMapPtr matte, const Rect *matteRect, short flags)
  1096. ;
  1097.     IF ¬ GENERATINGCFM THEN
  1098.         Macro
  1099.         _StdPix
  1100.             moveq    #12,d0
  1101.             dc.w     $AAA3
  1102.         EndM
  1103.     ELSE
  1104.         IMPORT_CFM_FUNCTION    StdPix
  1105.     ENDIF
  1106.  
  1107. ;
  1108. ; pascal OSErr TransformRgn(MatrixRecordPtr matrix, RgnHandle rgn)
  1109. ;
  1110.     IF ¬ GENERATINGCFM THEN
  1111.         Macro
  1112.         _TransformRgn
  1113.             moveq    #57,d0
  1114.             dc.w     $AAA3
  1115.         EndM
  1116.     ELSE
  1117.         IMPORT_CFM_FUNCTION    TransformRgn
  1118.     ENDIF
  1119.  
  1120. ;**********
  1121. ;    preview stuff
  1122. ;**********
  1123. ;
  1124. ; pascal void SFGetFilePreview(Point where, ConstStr255Param prompt, FileFilterUPP fileFilter, short numTypes, ConstSFTypeListPtr typeList, DlgHookUPP dlgHook, SFReply *reply)
  1125. ;
  1126.     IF ¬ GENERATINGCFM THEN
  1127.         Macro
  1128.         _SFGetFilePreview
  1129.             moveq    #65,d0
  1130.             dc.w     $AAA3
  1131.         EndM
  1132.     ELSE
  1133.         IMPORT_CFM_FUNCTION    SFGetFilePreview
  1134.     ENDIF
  1135.  
  1136. ;
  1137. ; pascal void SFPGetFilePreview(Point where, ConstStr255Param prompt, FileFilterUPP fileFilter, short numTypes, ConstSFTypeListPtr typeList, DlgHookUPP dlgHook, SFReply *reply, short dlgID, ModalFilterUPP filterProc)
  1138. ;
  1139.     IF ¬ GENERATINGCFM THEN
  1140.         Macro
  1141.         _SFPGetFilePreview
  1142.             moveq    #66,d0
  1143.             dc.w     $AAA3
  1144.         EndM
  1145.     ELSE
  1146.         IMPORT_CFM_FUNCTION    SFPGetFilePreview
  1147.     ENDIF
  1148.  
  1149. ;
  1150. ; pascal void StandardGetFilePreview(FileFilterUPP fileFilter, short numTypes, ConstSFTypeListPtr typeList, StandardFileReply *reply)
  1151. ;
  1152.     IF ¬ GENERATINGCFM THEN
  1153.         Macro
  1154.         _StandardGetFilePreview
  1155.             moveq    #67,d0
  1156.             dc.w     $AAA3
  1157.         EndM
  1158.     ELSE
  1159.         IMPORT_CFM_FUNCTION    StandardGetFilePreview
  1160.     ENDIF
  1161.  
  1162. ;
  1163. ; pascal void CustomGetFilePreview(FileFilterYDUPP fileFilter, short numTypes, ConstSFTypeListPtr typeList, StandardFileReply *reply, short dlgID, Point where, DlgHookYDUPP dlgHook, ModalFilterYDUPP filterProc, ActivationOrderListPtr activeList, ActivateYDUPP activateProc, void *yourDataPtr)
  1164. ;
  1165.     IF ¬ GENERATINGCFM THEN
  1166.         Macro
  1167.         _CustomGetFilePreview
  1168.             moveq    #68,d0
  1169.             dc.w     $AAA3
  1170.         EndM
  1171.     ELSE
  1172.         IMPORT_CFM_FUNCTION    CustomGetFilePreview
  1173.     ENDIF
  1174.  
  1175. ;
  1176. ; pascal OSErr MakeFilePreview(short resRefNum, ICMProgressProcRecordPtr progress)
  1177. ;
  1178.     IF ¬ GENERATINGCFM THEN
  1179.         Macro
  1180.         _MakeFilePreview
  1181.             moveq    #69,d0
  1182.             dc.w     $AAA3
  1183.         EndM
  1184.     ELSE
  1185.         IMPORT_CFM_FUNCTION    MakeFilePreview
  1186.     ENDIF
  1187.  
  1188. ;
  1189. ; pascal OSErr AddFilePreview(short resRefNum, OSType previewType, Handle previewData)
  1190. ;
  1191.     IF ¬ GENERATINGCFM THEN
  1192.         Macro
  1193.         _AddFilePreview
  1194.             moveq    #70,d0
  1195.             dc.w     $AAA3
  1196.         EndM
  1197.     ELSE
  1198.         IMPORT_CFM_FUNCTION    AddFilePreview
  1199.     ENDIF
  1200.  
  1201.  
  1202. sfpItemPreviewAreaUser            EQU        11
  1203. sfpItemPreviewStaticText        EQU        12
  1204. sfpItemPreviewDividerUser        EQU        13
  1205. sfpItemCreatePreviewButton        EQU        14
  1206. sfpItemShowPreviewButton        EQU        15
  1207.  
  1208. PreviewResourceRecord     RECORD    0
  1209. modDate                     ds.l   1        ; offset: $0 (0)
  1210. version                     ds.w   1        ; offset: $4 (4)
  1211. resType                     ds.l   1        ; offset: $6 (6)
  1212. resID                     ds.w   1        ; offset: $A (10)
  1213. sizeof                     EQU *            ; size:   $C (12)
  1214.                         ENDR
  1215.  
  1216. ; typedef struct PreviewResourceRecord  PreviewResourceRecord, *PreviewResourcePtr, **PreviewResource
  1217. ;
  1218. ; pascal void AlignScreenRect(Rect *rp, ICMAlignmentProcRecordPtr alignmentProc)
  1219. ;
  1220.     IF ¬ GENERATINGCFM THEN
  1221.         Macro
  1222.         _AlignScreenRect
  1223.             dc.w     $203C
  1224.             dc.w     $0008
  1225.             dc.w     $004C
  1226.             dc.w     $AAA3
  1227.         EndM
  1228.     ELSE
  1229.         IMPORT_CFM_FUNCTION    AlignScreenRect
  1230.     ENDIF
  1231.  
  1232. ;
  1233. ; pascal void AlignWindow(WindowPtr wp, Boolean front, const Rect *alignmentRect, ICMAlignmentProcRecordPtr alignmentProc)
  1234. ;
  1235.     IF ¬ GENERATINGCFM THEN
  1236.         Macro
  1237.         _AlignWindow
  1238.             dc.w     $203C
  1239.             dc.w     $000E
  1240.             dc.w     $004D
  1241.             dc.w     $AAA3
  1242.         EndM
  1243.     ELSE
  1244.         IMPORT_CFM_FUNCTION    AlignWindow
  1245.     ENDIF
  1246.  
  1247. ;
  1248. ; pascal void DragAlignedWindow(WindowPtr wp, Point startPt, Rect *boundsRect, Rect *alignmentRect, ICMAlignmentProcRecordPtr alignmentProc)
  1249. ;
  1250.     IF ¬ GENERATINGCFM THEN
  1251.         Macro
  1252.         _DragAlignedWindow
  1253.             dc.w     $203C
  1254.             dc.w     $0014
  1255.             dc.w     $004E
  1256.             dc.w     $AAA3
  1257.         EndM
  1258.     ELSE
  1259.         IMPORT_CFM_FUNCTION    DragAlignedWindow
  1260.     ENDIF
  1261.  
  1262. ;
  1263. ; pascal long DragAlignedGrayRgn(RgnHandle theRgn, Point startPt, Rect *boundsRect, Rect *slopRect, short axis, UniversalProcPtr actionProc, Rect *alignmentRect, ICMAlignmentProcRecordPtr alignmentProc)
  1264. ;
  1265.     IF ¬ GENERATINGCFM THEN
  1266.         Macro
  1267.         _DragAlignedGrayRgn
  1268.             dc.w     $203C
  1269.             dc.w     $001E
  1270.             dc.w     $004F
  1271.             dc.w     $AAA3
  1272.         EndM
  1273.     ELSE
  1274.         IMPORT_CFM_FUNCTION    DragAlignedGrayRgn
  1275.     ENDIF
  1276.  
  1277. ;
  1278. ; pascal OSErr SetCSequenceDataRateParams(ImageSequence seqID, DataRateParamsPtr params)
  1279. ;
  1280.     IF ¬ GENERATINGCFM THEN
  1281.         Macro
  1282.         _SetCSequenceDataRateParams
  1283.             dc.w     $203C
  1284.             dc.w     $0008
  1285.             dc.w     $0050
  1286.             dc.w     $AAA3
  1287.         EndM
  1288.     ELSE
  1289.         IMPORT_CFM_FUNCTION    SetCSequenceDataRateParams
  1290.     ENDIF
  1291.  
  1292. ;
  1293. ; pascal OSErr SetCSequenceFrameNumber(ImageSequence seqID, long frameNumber)
  1294. ;
  1295.     IF ¬ GENERATINGCFM THEN
  1296.         Macro
  1297.         _SetCSequenceFrameNumber
  1298.             dc.w     $203C
  1299.             dc.w     $0008
  1300.             dc.w     $0051
  1301.             dc.w     $AAA3
  1302.         EndM
  1303.     ELSE
  1304.         IMPORT_CFM_FUNCTION    SetCSequenceFrameNumber
  1305.     ENDIF
  1306.  
  1307. ;
  1308. ; pascal QDErr NewImageGWorld(GWorldPtr *gworld, ImageDescriptionHandle idh, GWorldFlags flags)
  1309. ;
  1310.     IF ¬ GENERATINGCFM THEN
  1311.         Macro
  1312.         _NewImageGWorld
  1313.             dc.w     $203C
  1314.             dc.w     $000C
  1315.             dc.w     $0052
  1316.             dc.w     $AAA3
  1317.         EndM
  1318.     ELSE
  1319.         IMPORT_CFM_FUNCTION    NewImageGWorld
  1320.     ENDIF
  1321.  
  1322. ;
  1323. ; pascal OSErr GetCSequenceDataRateParams(ImageSequence seqID, DataRateParamsPtr params)
  1324. ;
  1325.     IF ¬ GENERATINGCFM THEN
  1326.         Macro
  1327.         _GetCSequenceDataRateParams
  1328.             dc.w     $203C
  1329.             dc.w     $0008
  1330.             dc.w     $0053
  1331.             dc.w     $AAA3
  1332.         EndM
  1333.     ELSE
  1334.         IMPORT_CFM_FUNCTION    GetCSequenceDataRateParams
  1335.     ENDIF
  1336.  
  1337. ;
  1338. ; pascal OSErr GetCSequenceFrameNumber(ImageSequence seqID, long *frameNumber)
  1339. ;
  1340.     IF ¬ GENERATINGCFM THEN
  1341.         Macro
  1342.         _GetCSequenceFrameNumber
  1343.             dc.w     $203C
  1344.             dc.w     $0008
  1345.             dc.w     $0054
  1346.             dc.w     $AAA3
  1347.         EndM
  1348.     ELSE
  1349.         IMPORT_CFM_FUNCTION    GetCSequenceFrameNumber
  1350.     ENDIF
  1351.  
  1352. ;
  1353. ; pascal OSErr GetBestDeviceRect(GDHandle *gdh, Rect *rp)
  1354. ;
  1355.     IF ¬ GENERATINGCFM THEN
  1356.         Macro
  1357.         _GetBestDeviceRect
  1358.             dc.w     $203C
  1359.             dc.w     $0008
  1360.             dc.w     $0055
  1361.             dc.w     $AAA3
  1362.         EndM
  1363.     ELSE
  1364.         IMPORT_CFM_FUNCTION    GetBestDeviceRect
  1365.     ENDIF
  1366.  
  1367. ;
  1368. ; pascal OSErr SetSequenceProgressProc(ImageSequence seqID, ICMProgressProcRecord *progressProc)
  1369. ;
  1370.     IF ¬ GENERATINGCFM THEN
  1371.         Macro
  1372.         _SetSequenceProgressProc
  1373.             dc.w     $203C
  1374.             dc.w     $0008
  1375.             dc.w     $0056
  1376.             dc.w     $AAA3
  1377.         EndM
  1378.     ELSE
  1379.         IMPORT_CFM_FUNCTION    SetSequenceProgressProc
  1380.     ENDIF
  1381.  
  1382. ;
  1383. ; pascal OSErr GDHasScale(GDHandle gdh, short depth, Fixed *scale)
  1384. ;
  1385.     IF ¬ GENERATINGCFM THEN
  1386.         Macro
  1387.         _GDHasScale
  1388.             dc.w     $203C
  1389.             dc.w     $000A
  1390.             dc.w     $005A
  1391.             dc.w     $AAA3
  1392.         EndM
  1393.     ELSE
  1394.         IMPORT_CFM_FUNCTION    GDHasScale
  1395.     ENDIF
  1396.  
  1397. ;
  1398. ; pascal OSErr GDGetScale(GDHandle gdh, Fixed *scale, short *flags)
  1399. ;
  1400.     IF ¬ GENERATINGCFM THEN
  1401.         Macro
  1402.         _GDGetScale
  1403.             dc.w     $203C
  1404.             dc.w     $000C
  1405.             dc.w     $005B
  1406.             dc.w     $AAA3
  1407.         EndM
  1408.     ELSE
  1409.         IMPORT_CFM_FUNCTION    GDGetScale
  1410.     ENDIF
  1411.  
  1412. ;
  1413. ; pascal OSErr GDSetScale(GDHandle gdh, Fixed scale, short flags)
  1414. ;
  1415.     IF ¬ GENERATINGCFM THEN
  1416.         Macro
  1417.         _GDSetScale
  1418.             dc.w     $203C
  1419.             dc.w     $000A
  1420.             dc.w     $005C
  1421.             dc.w     $AAA3
  1422.         EndM
  1423.     ELSE
  1424.         IMPORT_CFM_FUNCTION    GDSetScale
  1425.     ENDIF
  1426.  
  1427. ;
  1428. ; pascal OSErr ICMShieldSequenceCursor(ImageSequence seqID)
  1429. ;
  1430.     IF ¬ GENERATINGCFM THEN
  1431.         Macro
  1432.         _ICMShieldSequenceCursor
  1433.             dc.w     $203C
  1434.             dc.w     $0004
  1435.             dc.w     $0062
  1436.             dc.w     $AAA3
  1437.         EndM
  1438.     ELSE
  1439.         IMPORT_CFM_FUNCTION    ICMShieldSequenceCursor
  1440.     ENDIF
  1441.  
  1442. ;
  1443. ; pascal void ICMDecompressComplete(ImageSequence seqID, OSErr err, short flag, ICMCompletionProcRecordPtr completionRtn)
  1444. ;
  1445.     IF ¬ GENERATINGCFM THEN
  1446.         Macro
  1447.         _ICMDecompressComplete
  1448.             dc.w     $203C
  1449.             dc.w     $000C
  1450.             dc.w     $0063
  1451.             dc.w     $AAA3
  1452.         EndM
  1453.     ELSE
  1454.         IMPORT_CFM_FUNCTION    ICMDecompressComplete
  1455.     ENDIF
  1456.  
  1457. ;
  1458. ; pascal OSErr SetDSequenceTimeCode(ImageSequence seqID, void *timeCodeFormat, void *timeCodeTime)
  1459. ;
  1460.     IF ¬ GENERATINGCFM THEN
  1461.         Macro
  1462.         _SetDSequenceTimeCode
  1463.             dc.w     $203C
  1464.             dc.w     $000C
  1465.             dc.w     $0064
  1466.             dc.w     $AAA3
  1467.         EndM
  1468.     ELSE
  1469.         IMPORT_CFM_FUNCTION    SetDSequenceTimeCode
  1470.     ENDIF
  1471.  
  1472.  
  1473. identityMatrixType                EQU        $00                    ; result if matrix is identity 
  1474. translateMatrixType                EQU        $01                    ; result if matrix translates 
  1475. scaleMatrixType                    EQU        $02                    ; result if matrix scales 
  1476. scaleTranslateMatrixType        EQU        $03                    ; result if matrix scales and translates 
  1477. linearMatrixType                EQU        $04                    ; result if matrix is general 2 x 2 
  1478. linearTranslateMatrixType        EQU        $05                    ; result if matrix is general 2 x 2 and translates 
  1479. perspectiveMatrixType            EQU        $06                    ; result if matrix is general 3 x 3 
  1480.  
  1481. ; typedef unsigned short     MatrixFlags
  1482. ;
  1483. ; pascal short GetMatrixType(const MatrixRecord *m)
  1484. ;
  1485.     IF ¬ GENERATINGCFM THEN
  1486.         Macro
  1487.         _GetMatrixType
  1488.             moveq    #20,d0
  1489.             dc.w     $ABC2
  1490.         EndM
  1491.     ELSE
  1492.         IMPORT_CFM_FUNCTION    GetMatrixType
  1493.     ENDIF
  1494.  
  1495. ;
  1496. ; pascal void CopyMatrix(const MatrixRecord *m1, MatrixRecord *m2)
  1497. ;
  1498.     IF ¬ GENERATINGCFM THEN
  1499.         Macro
  1500.         _CopyMatrix
  1501.             moveq    #32,d0
  1502.             dc.w     $ABC2
  1503.         EndM
  1504.     ELSE
  1505.         IMPORT_CFM_FUNCTION    CopyMatrix
  1506.     ENDIF
  1507.  
  1508. ;
  1509. ; pascal Boolean EqualMatrix(const MatrixRecord *m1, const MatrixRecord *m2)
  1510. ;
  1511.     IF ¬ GENERATINGCFM THEN
  1512.         Macro
  1513.         _EqualMatrix
  1514.             moveq    #33,d0
  1515.             dc.w     $ABC2
  1516.         EndM
  1517.     ELSE
  1518.         IMPORT_CFM_FUNCTION    EqualMatrix
  1519.     ENDIF
  1520.  
  1521. ;
  1522. ; pascal void SetIdentityMatrix(MatrixRecord *matrix)
  1523. ;
  1524.     IF ¬ GENERATINGCFM THEN
  1525.         Macro
  1526.         _SetIdentityMatrix
  1527.             moveq    #21,d0
  1528.             dc.w     $ABC2
  1529.         EndM
  1530.     ELSE
  1531.         IMPORT_CFM_FUNCTION    SetIdentityMatrix
  1532.     ENDIF
  1533.  
  1534. ;
  1535. ; pascal void TranslateMatrix(MatrixRecord *m, Fixed deltaH, Fixed deltaV)
  1536. ;
  1537.     IF ¬ GENERATINGCFM THEN
  1538.         Macro
  1539.         _TranslateMatrix
  1540.             moveq    #25,d0
  1541.             dc.w     $ABC2
  1542.         EndM
  1543.     ELSE
  1544.         IMPORT_CFM_FUNCTION    TranslateMatrix
  1545.     ENDIF
  1546.  
  1547. ;
  1548. ; pascal void RotateMatrix(MatrixRecord *m, Fixed degrees, Fixed aboutX, Fixed aboutY)
  1549. ;
  1550.     IF ¬ GENERATINGCFM THEN
  1551.         Macro
  1552.         _RotateMatrix
  1553.             moveq    #22,d0
  1554.             dc.w     $ABC2
  1555.         EndM
  1556.     ELSE
  1557.         IMPORT_CFM_FUNCTION    RotateMatrix
  1558.     ENDIF
  1559.  
  1560. ;
  1561. ; pascal void ScaleMatrix(MatrixRecord *m, Fixed scaleX, Fixed scaleY, Fixed aboutX, Fixed aboutY)
  1562. ;
  1563.     IF ¬ GENERATINGCFM THEN
  1564.         Macro
  1565.         _ScaleMatrix
  1566.             moveq    #23,d0
  1567.             dc.w     $ABC2
  1568.         EndM
  1569.     ELSE
  1570.         IMPORT_CFM_FUNCTION    ScaleMatrix
  1571.     ENDIF
  1572.  
  1573. ;
  1574. ; pascal void SkewMatrix(MatrixRecord *m, Fixed skewX, Fixed skewY, Fixed aboutX, Fixed aboutY)
  1575. ;
  1576.     IF ¬ GENERATINGCFM THEN
  1577.         Macro
  1578.         _SkewMatrix
  1579.             moveq    #24,d0
  1580.             dc.w     $ABC2
  1581.         EndM
  1582.     ELSE
  1583.         IMPORT_CFM_FUNCTION    SkewMatrix
  1584.     ENDIF
  1585.  
  1586. ;
  1587. ; pascal OSErr TransformFixedPoints(const MatrixRecord *m, FixedPoint *fpt, long count)
  1588. ;
  1589.     IF ¬ GENERATINGCFM THEN
  1590.         Macro
  1591.         _TransformFixedPoints
  1592.             moveq    #34,d0
  1593.             dc.w     $ABC2
  1594.         EndM
  1595.     ELSE
  1596.         IMPORT_CFM_FUNCTION    TransformFixedPoints
  1597.     ENDIF
  1598.  
  1599. ;
  1600. ; pascal OSErr TransformPoints(const MatrixRecord *mp, Point *pt1, long count)
  1601. ;
  1602.     IF ¬ GENERATINGCFM THEN
  1603.         Macro
  1604.         _TransformPoints
  1605.             moveq    #35,d0
  1606.             dc.w     $ABC2
  1607.         EndM
  1608.     ELSE
  1609.         IMPORT_CFM_FUNCTION    TransformPoints
  1610.     ENDIF
  1611.  
  1612. ;
  1613. ; pascal Boolean TransformFixedRect(const MatrixRecord *m, FixedRect *fr, FixedPoint *fpp)
  1614. ;
  1615.     IF ¬ GENERATINGCFM THEN
  1616.         Macro
  1617.         _TransformFixedRect
  1618.             moveq    #36,d0
  1619.             dc.w     $ABC2
  1620.         EndM
  1621.     ELSE
  1622.         IMPORT_CFM_FUNCTION    TransformFixedRect
  1623.     ENDIF
  1624.  
  1625. ;
  1626. ; pascal Boolean TransformRect(const MatrixRecord *m, Rect *r, FixedPoint *fpp)
  1627. ;
  1628.     IF ¬ GENERATINGCFM THEN
  1629.         Macro
  1630.         _TransformRect
  1631.             moveq    #37,d0
  1632.             dc.w     $ABC2
  1633.         EndM
  1634.     ELSE
  1635.         IMPORT_CFM_FUNCTION    TransformRect
  1636.     ENDIF
  1637.  
  1638. ;
  1639. ; pascal Boolean InverseMatrix(const MatrixRecord *m, MatrixRecord *im)
  1640. ;
  1641.     IF ¬ GENERATINGCFM THEN
  1642.         Macro
  1643.         _InverseMatrix
  1644.             moveq    #28,d0
  1645.             dc.w     $ABC2
  1646.         EndM
  1647.     ELSE
  1648.         IMPORT_CFM_FUNCTION    InverseMatrix
  1649.     ENDIF
  1650.  
  1651. ;
  1652. ; pascal void ConcatMatrix(const MatrixRecord *a, MatrixRecord *b)
  1653. ;
  1654.     IF ¬ GENERATINGCFM THEN
  1655.         Macro
  1656.         _ConcatMatrix
  1657.             moveq    #27,d0
  1658.             dc.w     $ABC2
  1659.         EndM
  1660.     ELSE
  1661.         IMPORT_CFM_FUNCTION    ConcatMatrix
  1662.     ENDIF
  1663.  
  1664. ;
  1665. ; pascal void RectMatrix(MatrixRecord *matrix, const Rect *srcRect, const Rect *dstRect)
  1666. ;
  1667.     IF ¬ GENERATINGCFM THEN
  1668.         Macro
  1669.         _RectMatrix
  1670.             moveq    #30,d0
  1671.             dc.w     $ABC2
  1672.         EndM
  1673.     ELSE
  1674.         IMPORT_CFM_FUNCTION    RectMatrix
  1675.     ENDIF
  1676.  
  1677. ;
  1678. ; pascal void MapMatrix(MatrixRecord *matrix, const Rect *fromRect, const Rect *toRect)
  1679. ;
  1680.     IF ¬ GENERATINGCFM THEN
  1681.         Macro
  1682.         _MapMatrix
  1683.             moveq    #29,d0
  1684.             dc.w     $ABC2
  1685.         EndM
  1686.     ELSE
  1687.         IMPORT_CFM_FUNCTION    MapMatrix
  1688.     ENDIF
  1689.  
  1690.     ENDIF ; __IMAGECOMPRESSION__
  1691.